package com.kingyun.gpsinspection.purificationservice.facade.service.tdm;

import com.kingyun.gpsinspection.purificationservice.facade.model.jsm.EmployeeVo;
import com.kingyun.gpsinspection.purificationservice.facade.model.jsm.RedisValue;
import com.kingyun.gpsinspection.purificationservice.facade.model.tdm.MaterialsManageVo;
import com.kingyun.gpsinspection.purificationservice.facade.model.tdm.TaskLink;

/**
 * Created by liyi on 2016/12/15.
 */
public interface MaterialsManageService {
    /**
     *  保存物料管理信息
     *
     * @param employeeVo
     * @param materialsManage
     * @return
     * @throws Exception
     */
    MaterialsManageVo saveMaterialsManage(RedisValue redisValue, EmployeeVo employeeVo, MaterialsManageVo materialsManage, String uploadFiles, String deletedFiles);
    /**
     *  根据流程ID获取物料管理信息
     * @param piid
     * @return
     * @throws Exception
     */
    MaterialsManageVo findMaterialsManage(String piid)throws Exception;

    /**
     * 根据物料管理ID修改审批意见
     * @param procurementMethod
     * @param materialsManageId
     * @return
     * @throws Exception
     */
    int updateById(TaskLink taskLink, Short procurementMethod, Short node, String materialsManageId) throws Exception;

    /**
     *  处理流程
     *
     * @param employeeVo
     * @param materialsManage
     * @param taskLink
     * @return
     */
    int disposeTask(RedisValue redisValue, EmployeeVo employeeVo, MaterialsManageVo materialsManage, TaskLink taskLink);

    /**
     * 根据主键查询
     * @param id
     * @return
     */
    MaterialsManageVo queryByPrimaryKey(String id);
}
